﻿using System;
using System.Collections;
using System.Configuration;
using System.Data;
using System.Linq;
using System.Web;
using System.Web.Security;
using System.Web.UI;
using System.Web.UI.HtmlControls;
using System.Web.UI.WebControls;
using System.Web.UI.WebControls.WebParts;
using System.Xml.Linq;

public partial class Administrador_Moviles_InsertarMovil : System.Web.UI.Page
{
    protected void Page_Load(object sender, EventArgs e)
    {

    }
    protected void ButtonIngresar_Click(object sender, EventArgs e)
    {
        try
        {
            bool es_valido = true;
            //validar los datos

            //validar patente (formato validado por expresiones regulares, not null)
            //valida tipo (formato string, not null)
            //validar año (formato de 4 digitos, null)
            //validar capacidad (formato numerico, not null)

            //los datos anteriores son validados en la vista

            //verificar que la conversion se pueda realizar
            if (es_valido == true)
            {
                string value = TextBoxCapacidad.Text;
                int number;
                bool result = Int32.TryParse(value, out number);
                if (result == false)
                {//el texto no se puede convertier a entero
                    LabelMensajeIngresar.Text = "Capacidad no válida.";
                    LabelMensajeIngresar.Visible = true;
                    es_valido = false;
                }                
            }

            if (es_valido == true)
            {//si ha pasado todas las pruebas
                //rescatar datos validados!

                string patente = TextBoxPatente.Text.Trim();
                string tipo = TextBoxTipo.Text.Trim();
                int ano = int.Parse(TextBoxAno.Text);
                int capacidad = int.Parse(TextBoxCapacidad.Text);

                MovilBLL movilbll = new MovilBLL();//conexion con modelo

                int filas_afectadas = movilbll.insertarMovil(patente, tipo, ano, capacidad);
                if (filas_afectadas == 0)
                {
                    LabelMensajeIngresar.Text = "Imposible ingresar móvil.";
                    LabelMensajeIngresar.Visible = true;
                }
                else
                {
                    LabelMensajeIngresar.Text = "Móvil ingresado exitósamente.";
                    LabelMensajeIngresar.Visible = true;
                }
            }
        }
        catch (Exception)
        {
            LabelMensajeIngresar.Text = "Error al ingresar móvil.";
            LabelMensajeIngresar.Visible = true;
        }
    }
}
